1
“一切皆文件”抽象
AI031Lesson 10
00:00

在 Linux 中, “一切皆文件” 抽象将所有 I/O 源——从普通文件到网络 套接字——映射为统一的字节流。这种统一接口使得能够以一致的方式进行 系统级 I/O 来管理一个 服务器进程客户端进程多核处理器

统一模型

无论程序访问的是 普通文件目录还是像 网络适配器这样的硬件,都使用相同的原语。如 硬件架构(图 11.2)所示,操作系统通过 I/O 总线将 CPU 和内存连接到设备,将网络视为文件以简化 多核处理器上的并发

系统/内存总线架构CPUI/O 桥接器网络适配器

健壮 I/O 与元数据

为处理 短读写计数 (当请求字节数 $k$ 与可用字节数 $m$ 满足 $k \ge m$ 时), Rio(健壮 I/O)包 提供 rio_readinitb 用于 缓冲输入。元数据通过 stat进行管理,而权限如 O_RDWRS_IROTHumask

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>